perm filename PATH2[1,JMC] blob
sn#005215 filedate 1969-10-25 generic text, type T, neo UTF8
00100 (DE PATH (START GOAL GRAPH) (PATHA NIL (LIST START)
00200 NIL NIL))
00300
00400 (DE PATHA (EXC RE PRED NR) (COND ((NULL RE) (COND ((NULL NR)
00500 (QUOTE NO)) (T (PATHA EXC NR PRED NIL))))
00600 ((EQ (CAR RE) GOAL) (UNWIND (LIST GOAL)))
00700 (T ((LAMBDA (U) (PATHA (CONS (CAR RE) EXC)
00800 (CDR RE) (APPEND (MAPLIST (FUNCTION
00900 (LAMBDA (X) (CONS (CAR X) (CAR RE)))) U) PRED) U))
01000 (GLUB (CDR (ASSOC (CAR RE) GRAPH)))))))
01100
01200 (DE UNWIND (P) (COND ((EQ (CAR P) START) P)
01300 (T (UNWIND (CDR (ASSOC (CAR P) PRED))))))
01400
01500 (DE GLUB (U) (COND ((NULL U) NIL) ((OR (MEMBER (CAR U) EXC)
01600 (MEMBER (CAR U) NR) (MEMBER (CAR U) RE)) (GLUB (CDR U)))
01700 (T (CONS (CAR U) (GLUB (CDR U))))))
01800
01900 (SETQ GG (QUOTE ((A B C) (B A C D) (C A B E) (D B E F)
02000 (E C D) (F D G) (G F))))